package edu.nf.hotel.roominfodao;

import edu.nf.hotel.roominfo.RoomInfo;
import edu.nf.hotel.roominfo.RoomPredInfo;
import edu.nf.hotel.roominfo.all.RoomTypeInfo;

import java.util.List;

/**
 * @Date 2023-06-30
 * @Author 带土
 */
public interface RoomTypeInfoDao {
    /**
     * 查询客房类型信息和客房信息
     * @return
     */
    List<RoomTypeInfo> getAllRoomTypeInfo();

    /**
     * 根据客房类型查询客房类型信息和客房信息
     * @param roomType
     * @return
     */
    List<RoomTypeInfo> getTypeRoomTypeInfo(String roomType);

    /**
     * 根据客房名称查询客房类型信息和客房信息
     * @param roomName
     * @return
     */
    List<RoomTypeInfo> getNameRoomTypeInfo(String roomName);

    /**
     * 客房信息分页查询
     * @param roomInfo
     * @param numberOf
     * @param limit
     * @return
     */
    List<RoomTypeInfo> listInformation(RoomInfo roomInfo, int numberOf, int limit);


    /**
     * 查询总记录数，用于计算总页数
     * @return
     */
    Long count();
}
